User.php

<?php

namespace Api;

class User {

    protected $lia;

    public function __construct($lia){
        $this->lia = $lia;
    }

    public function apiArgs($data){
        $model = $this->lia->getUserBackend()->userById($data->user);

        return [
            $model,
        ];
    }

    public function apiUpdateArgs($model, $data){
        return [$data->what];
    }

    public function apiUpdate($model, $column, $data){
        $lia = $this->lia;
        $what = $column;
        if ($what=='user_name'){
            $lia->getUserBackend()->updateUserFirstName($model, $_POST['name']);
        } else if ($what=='user_last_name'){
            $lia->getUserBackend()->updateUserLastName($model, $_POST['name']);
        } else if ($what=='user_email'){
            $lia->getUserBackend()->updateUserEmail($model, $_POST['email']);
        }
    }
    
    public function apiDelete($model, $data){
        if (trim($data->confirm)=='delete '.$model->email && $model->email != ''){
            $this->lia->getUserBackend()->deleteUser($model);
            echo 'User deleted!';
            return;
        }
        echo 'Could not delete user because your confirmation was invalid.';
    }

    public function apiForm($model, $data){
        echo $this->lia->view('user/adminform/'.$data->form, ['user'=>$model, 'for'=>$data->for??'user_name']);
    }


}